/*
  学习目标：推荐：使用 `setState((preState) => {})` 语法
参数preState: React.js 会把上一个 `setState` 的结果传入这个函数
总结：

1. **这种语法依旧是异步的**。
2. 合并：**后面不会覆盖前面：**形参代表上一次调用的state结果。适用于需要调用多次setState
3. render仍然只会执行一次。
*/
import React, { Component } from 'react'

export default class App extends Component {
    state = {
        count: 0,
    };

    handleClick = () => {
        this.setState((preState) => {
            return {
                count: preState.count + 1
            }
        })
        this.setState((preState) => {
            return {
                count: preState.count + 2
            }
        })
        this.setState((preState) => {
            return {
                count: preState.count + 3
            }
        })

    };
    render() {
        console.log('只执行一次');
        return (
            <div>
                <h1>数量： {this.state.count}</h1>
                <button onClick={this.handleClick}>点我修改数量</button>
            </div>
        )
    }
}
